/*
 如果一个字符串可以由某个长度为k的字符串重复多次得到，我们说该串以k为周期。
 例如，abcabcabcabc就是以3为周期（注意，它也是以6和12为周期）。输入一个长度不超过80的串，输出它的最小周期。
 */
package com.yuan.algorithms.Algorithm_1;

import java.util.Scanner;

public class 周期串 {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        while (sc.hasNext()) {
            String n = sc.next();
            int size = n.length();
            for (int i = 0; i < size; i++) {
                if (size % (i + 1) == 0) {
                    String temp = excision(n, i + 1);
                    String result = "";
                    //以i为周期新建一个数组，并与原数组进行比较，如果相同则i是原数组的周期
                    for (int j = 0; j < size / (i + 1); j++) {
                        result += temp;
                    }
                    if (result.equals(n)) {
                        System.out.println((i + 1));
                        break;
                    }
                }
            }
        }
    }

    //分割字符串
    public static String excision(String n, int x) {
        String result = "";
        for (int i = 0; i < x; i++) {
            result += n.charAt(i);
        }
        return result;
    }
}
